#ifndef __HELLO__
#define __HELLO__
#ifdef __cplusplus
extern "C" {
#endif

typedef struct tag_hello hello_t;
struct tag_hello {
    /**
     * @brief say hello to the console
     * @param this the object of hello
     * @return no return value
     */
    void (*say_hello)(hello_t * this);
    void (*set_msg)(hello_t * this, char * msg);
    void (*destory)(hello_t * this);
};

hello_t * hello_create(void);
#ifdef __cplusplus
}
#endif
#endif